Today there is an increasing trend of data communication between communications units in different communications systems. Typical examples are communication between computers connected over a communications system such as Internet or a local area network and data communication between mobile user equipment and a communications server or node or another mobile user equipment over a radio communications system.
Many application protocols used in the data communication require that certain information and data is included in the messages transmitted over the communications system. This data could be required for enabling efficient session set-up, efficient delivery of the data messages throughout the system and/or could be used by the receiving communications unit for interpreting and processing the received messages. As a consequence many of the communicated data messages include fields that always comprise more or less the same data for a given pair or combination of communications units. This is generally no problem in communications systems with bandwidth rich communications links. However, in radio communications systems and other systems with typically a limited amount of available communications resources there is a general desire to reduce the amount of data that has to be transmitted between communications units.
As a consequence, a state-mediated data communication can be conducted. In such a case, the relevant states include information that may be used by the communications units in initiating the communications session and/or later on during the session. Thus, by employing states for the inter-unit communication several advantages can be obtained. Firstly, the duration of the very often time-critical communication session set-up can be reduced if the communications units already have access to states that include data required for such set-up procedures. In other words, this required set-up-related data does not have to be communicated between the units before or during the set-up, which results in reduced signaling and reduced set-up times. Furthermore, states can be used also during the subsequent signaling, for example by reducing the amount of data that has to be transmitted between the units and/or during compression and decompression procedures for further reducing the resulting size of the communicated (compressed) data messages.
The states are typically stored in a general-purpose memory or more often in a dedicated state memory in the communications unit. However, the size of the state memory or the state-associated storage portion of the general-purpose memory is often limited. The states in the memory are further often managed in a first-in-first-out (FIFO) basis. This means that when a new state is to be stored in the memory, it overwrites the oldest state found therein or the oldest state is shifted out of the memory, in cases where the memory is filled. This can, though, result in major problems for the inter-unit signaling if not the “right” states are found in the memory. For example, during a session set-up procedure the memory can be filled with presence update states, which will be useless for the session set-up. As a consequence, an inefficient and long set-up will occur, which will ruin the user-perceived interactivity.